#ifndef LIST_H
#define LIST_H

#include <stdlib.h>

typedef void * data_p;

typedef struct list_s {
    struct list_s *next;
    struct list_s *previous;
    data_p          data;
} list_t, *list_p, **list_pp;

list_p list_add( list_pp f, data_p d );
int list_rem( list_pp f, list_p l );
list_p list_find( list_p f, data_p d );

#endif
